Domain spanning applications

ABSTRACT

Managing and accessing media items, including: a plurality of domains configured to provide access to media items; a plurality of clients associated with the plurality domains, and providing a pathway for accessing the media items; and a spanning application configured to track and aggregate accessible media items from the plurality of domains based on authentication and registration information and associated rights of the plurality of clients and the plurality of domains, wherein the spanning application enables accessing of the media items across the plurality of domains.

CROSS-REFERENCE TO RELATED APPLICATIONS

This application claims the benefit of priority under 35 U.S.C. §119(e)of U.S. Provisional Patent Application No. 61/285,730, filed Dec. 11,2009, entitled “Domain Spanning.” The disclosure of the above-referencedapplication is incorporated herein by reference.

BACKGROUND

1. Field of the Invention

The present invention relates to media management and access, and morespecifically, to media management and access utilizing a domain spanningmodel.

2. Background

Systems and methods for managing and accessing digital content allow aconsumer to purchase digital content electronically. Examples ofdigitally distributed content include video and music files offered forsale on the Internet. The consumer purchases and downloads the contentfor viewing or listening on a suitable device, and may be allowed acertain number of copies of the content to be made.

Conventionally, online stores make digital content available inproprietary formats according to the requirements of a target userdevice. Further, online stores often implement various business modelsand usage models, such as procedures for payment, and for downloading,storing, replicating and accessing the content.

One particular problematic usage model imposes a maximum copy countallowed to a consumer after purchasing content. For example, theconsumer may be limited to four copies of the content once. Two copiesare used immediately for the consumer's computer and portable device.However, computer hard drive and portable device failures may eventuallylead to a situation where the consumer is left with no usable copies.

Various such requirements imposed by online stores tend to lockconsumers into a “silo” consisting of a single user device platform, asingle media format, and a single content source (e.g., network servicesuch as an online store). Consumers that purchase content from thesesilo services are unable to access their content on other devices theymay own which are not supported by that proprietary silo. As a result,these kinds of restrictions tend to lower consumers' perceived value ofthe “ecosystem” encompassing all electronic content distributionsystems.

SUMMARY

Implementations of the present invention provide for media managementand access techniques using a domain spanning concept.

In one implementation, a system of managing and accessing media items isdisclosed. The system includes: a plurality of domains configured toprovide access to media items; a plurality of clients associated withthe plurality domains, and providing a pathway for accessing the mediaitems; and a spanning application configured to track and aggregateaccessible media items from the plurality of domains based onauthentication and registration information and associated rights of theplurality of clients and the plurality of domains, wherein the spanningapplication enables accessing of the media items across the plurality ofdomains.

In another implementation, a method of managing and accessing mediaitems is disclosed. The method includes: tracking authentication andregistration information and associated rights of a plurality of clientsfor accessing a plurality of accessible media items from a plurality ofdomains; aggregating the plurality of accessible media items from theplurality of domains based on the authentication and registrationinformation and associated rights of the plurality of clients; andaccessing the media items across the plurality of domains.

In another implementation, a non-transitory tangible storage mediumstoring a computer program for managing and accessing media items isdisclosed. The computer program comprises executable instructions thatcause a computer to: track authentication and registration informationand associated rights of a plurality of clients for accessing aplurality of accessible media items from a plurality of domains;aggregate the plurality of accessible media items from the plurality ofdomains based on the authentication and registration information andassociated rights of the plurality of clients; and access the mediaitems across the plurality of domains.

Other features and advantages of the present invention will become morereadily apparent to those of ordinary skill in the art after reviewingthe following detailed description and accompanying drawings.

BRIEF DESCRIPTION OF THE DRAWINGS

The details of the present invention, both as to its structure andoperation, may be gleaned in part by study of the accompanying drawings,in which:

FIG. 1 shows a media access and management system in accordance with oneimplementation of the present invention;

FIG. 2 shows an example implementation of the media access andmanagement system including a spanning application;

FIG. 3 is a flowchart illustrating a technique for managing andaccessing media in accordance with one implementation of the presentinvention;

FIG. 4A illustrates a representation of a computer system and a user;and

FIG. 4B is a functional block diagram illustrating the computer systemhosting the media management and access system in accordance with oneimplementation of the present invention.

DETAILED DESCRIPTION

Certain implementations as disclosed herein provide for media managementand access techniques using a domain (or user domain) spanning concept.In one implementation, a single client application aggregates rightsfrom multiple domains and/or user accounts (hereinafter collectivelyreferred to as “domains”) into a single view thus spanning access ofcontent for a single “virtual” client across multiple domains. In aparticular implementation, the technique includes a local media playerand/or library management software application. After reading thisdescription it will become apparent how to implement the invention invarious implementations and applications. However, although variousimplementations of the present invention will be described herein, it isunderstood that these implementations are presented by way of exampleonly, and not limitation. As such, this detailed description of variousimplementations should not be construed to limit the scope or breadth ofthe present invention.

In a user domain, a set of registered devices allows a consumer tofreely access purchased content. The content is associated with the userdomain and may only play on devices registered with the user domain.Thus, a conventional usage model can include unrestricted access withina single domain of registered devices and one export of a content itemto a discrete medium (e.g., a DVD back-up). Rules may be imposed, forexample, to limit a user domain to a predetermined member devices (e.g.,12), to limit membership for an individual user device to only one userdomain at a time, to require expiration of a device's domain membershipafter a certain number of days of inactivity (e.g., 180 days butrenewable), and to require association of a user account with a singleuser domain at any given time.

Various roles can be assigned to participant in the domain concept. Forexample, content providers license content to retailers; domain serviceproviders manage digital rights management (DRM) domains and providelicenses and content fulfillment services; retailers provide storefrontservices to consumers and sell the licensed content; device makersmanufacture compliant devices to play the content; and a coordinator maymanage domain identities and facilitate interoperability between domainservice providers (DSPs).

The stores sell licensed content to consumers. A domain service provider(DSP) associated with a store functions as a “back-end” for the store.The DRM license servers of a DSP generate DRM licenses which enforcerights sold by the stores associated with the DSP. The DRM domainmanagers enforce domain membership by creating and managing, forexample, lower-level DRM objects such as domain keys. A rights locker ofa DSP holds the rights to content acquired at stores associated with theDSP. Interfaces allow multiple, independent DSPs to enforce the domainmodel by interacting with a centralized coordinator. The coordinatormanages domain IDs and supports the sharing of information necessary forinteroperability among the DSPs.

FIG. 1 shows a media access and management system 100 in accordance withone implementation of the present invention. The system 100 includesclients 110, 112, 114 linked to a user domain 120 and clients 116, 118linked to a user domain 122. In the illustrated implementation of FIG.1, the clients 110, 112, 114, 116, 118 link only to one user domain 120or 122 at a time. However, in other implementations, a client may linkto more than one domain at a time. Further, although FIG. 1 only showstwo domains and five clients, any number of domains and clients can belinked together.

The system 100 also includes a plurality of content sources 140, 142,144, 146, 148 from which a consumer may acquire content to be managed bythe user domains 120, 122. For example, content sources 140, 142, 144,146, 148 may be different online stores making available various typesof digital content in a variety of formats and/or according to a varietyof usage models. The content sources 140 and 142 supply the user domain120 while the content sources 144, 146, 148 supply the user domain 122.Each content source 140, 142, 144, 146, or 148 is associated with a userdomain 120 or 122 by way of a corresponding user account 130, 132, 134,136, or 138.

All of the user accounts 130, 132, 134, 136, 138 may be associated withthe same consumer or consumers within a “household”, and each separateuser account 130, 132, 134, 136, 138 associates the consumer with eachcorresponding content source 140, 142, 144, 146, 148. Content that comesinto the user domain 120 from the content sources 140, 142 thereforeenters through one of the user accounts 130, 132, while content thatcomes into the user domain 122 from the content sources 144, 146, 148enters through one of the user accounts 134, 136, 138. Thus, only theclients 110, 112, 114, 116, 118 associated with the user domains 120,122 may access the content.

The content is bound to the particular user account 130, 132, 134, 136,138 with which the content was acquired. For example, a content item(not shown) acquired from content source 140 will be bound to useraccount 130, and cannot be transferred to a different user account.However, the association of the user account 130 with the user domain120 may be severed and re-established with another user domain (e.g.,122). In this way, content may be transferred from one user domain toanother at the user account level. In another implementation, bycontrast, a content item may be transferred to another user domain bytransferring it to a user account linked to that user domain, thusrefining the granularity of separation from account level to contentitem level. In a further implementation, the user accounts and the userdomains may be collectively referred to as domains. For example, in theillustrated implementation of FIG. 1, the user accounts 130 and 132 aresubsumed in the user domain 120 and the user accounts 134, 136, 138 aresubsumed in the user domain 122.

The system 100 further includes a spanning application 150 which managesregistrations of multiple clients 110, 112, 114, 116, 118 and/or domains120, 122. The management functions include tracking authentication andregistration information and associated rights of the clients and/ordomains. The spanning application 150 also aggregates accessiblecontents into one or more views based on the rights of multiple clientsand/or domains. Thus, when the accessible contents are aggregated into asingle view, the multiple origins of the contents are transparent to theuser. The spanning application 150 also provides appropriate informationto allow access to selected content(s).

FIG. 2 shows an example implementation of the media access andmanagement system 100 including a spanning application 240. This exampleimplementation includes accessing movies from two user domains, Jonesdomain 200 and Smith domain 210. Jones domain 200 includes movies A, B,and C, while Smith domain 210 includes movies D, E, and F. In oneimplementation, movies A, B, and C are obtained from one content sourcethrough Jones account tied to the Jones domain, and movies D, E, and Fare obtained from another content source through Smith account tied tothe Smith domain. Client A 220 is associated with Jones domain 200,while client B 230 is associated with Smith domain 210. Accordingly,client A 220 has access to and can play movies A, B, and C, while clientB 230 has access to and can play movies D, E, and F.

As explained above, the spanning application 240 is configured tointeract with both clients A and B. A user of the spanning application240 can then access all six movies A, B, C, D, E, and F through theconnections to client A 220 and client B 230. In one implementation, theuser of the spanning application 240 is presented with a list of thesemovies as being available for viewing without differentiating to theuser between movies from the Jones domain 200 and movies from the Smithdomain 210. Similarly, the spanning application 240 takes care of thelogistics of fulfillment (transport, authentication) for the user. Thus,when the accessible movies A, B, C and D, E, F are aggregated into asingle view (i.e., a single view showing all movies A, B, C, D, E, F),the multiple origins of the contents are transparent to the user. Thatis, the user will not know that movies A, B, C are associated with Jonesdomain 200 through client A 220 and that movies D, E, F are associatedwith Smith domain 210 through client B 230.

FIG. 3 is a flowchart 300 illustrating a technique for managing andaccessing media in accordance with one implementation of the presentinvention. The technique includes a single client application whichaggregates rights from multiple domains and/or user accounts into asingle view.

In the illustrated implementation of FIG. 3, a request to display a listof media items which can be accessed is received, at 310. The type ofaccess permissions, rights, service provides, and authentications forthe media items in the list are then determined, at 320, and the list isdisplayed, at 330. In one implementation, a system for media managementand access provides an application presenting “views of rights” tocontent (including a single/aggregated view) from multiple/differentuser accounts and/or domains to a single user (based on rights grantedto multiple separate clients/users), such as locally on the user's homenetwork or online in the cloud (network).

When the media items are selected and requested for access (viewingand/or acquisition such as downloading or streaming), at 340, theselected media items are accessed and aggregated from various accountsand domains based on the determined types of access, at 350. In thiscase, the spanning application either maintains multiple useraccount/domain credentials, or rapidly and seamlessly removes itself andre-adds itself to the various underlying user accounts and/or domains toprovide just-in-time access to content rights. Further, the spanningapplication automatically and intelligently switches its client domainand/or user identity or association to provide the necessary credentialsfor client domain membership or user account to gain access to therights on such domain/account for the corresponding user.

FIG. 4A illustrates a representation of a computer system 400 and a user402. The user 402 can use the computer system 400 to implement contentdistribution. The computer system 400 stores and executes a mediamanagement and access system 490.

FIG. 4B is a functional block diagram illustrating the computer system400 hosting the media management and access system 490 in accordancewith one implementation of the present invention. The controller 410 isa programmable processor and controls the operation of the computersystem 400 and its components. The controller 410 loads instructionsfrom the memory 420 or an embedded controller memory (not shown) andexecutes these instructions to control the system. In its execution, thecontroller 410 provides the media management and access system 490 as asoftware system. Alternatively, this service can be implemented asseparate components in the controller 410 or the computer system 400.

Memory 420 stores data temporarily for use by the other components ofthe computer system 400. In one implementation, memory 420 isimplemented as RAM. In one implementation, memory 420 also includeslong-term or permanent memory, such as flash memory and/or ROM.

Storage 430 stores data temporarily or long term for use by othercomponents of the computer system 400, such as for storing data used bythe media management and access system 490. In one implementation,storage 430 is a hard disk drive.

The media device 440 receives removable media and reads and/or writesdata to the inserted media. In one implementation, the media device 440is an optical disc drive.

The user interface 450 includes components for accepting user input fromthe user of the computer system 100 and presenting information to theuser. In one implementation, the user interface 450 includes a keyboard,a mouse, audio speakers, and a display. The controller 410 uses inputfrom the user to adjust the operation of the computer system 400.

The I/O interface 460 includes one or more I/O ports to connect tocorresponding I/O devices, such as external storage or supplementaldevices (e.g., a printer or a PDA). In one implementation, the ports ofthe I/O interface 460 include ports such as: USB ports, PCMCIA ports,serial ports, and/or parallel ports. In another implementation, the I/Ointerface 460 includes a wireless interface for communication withexternal devices wirelessly.

The network interface 170 includes a wired and/or wireless networkconnection, such as an RJ-45 or “Wi-Fi” interface (including, but notlimited to 802.11) supporting an Ethernet connection.

A system communication path 480 (e.g., a system communication bus)provides for transfers of data and control information between the mediadevice 440, user interface 450, I/O interface 460, network interface470, storage 430, memory 420, and controller 410.

The computer system 400 includes additional hardware and softwaretypical of computer systems (e.g., power, cooling, operating system),though these components are not specifically shown in FIG. 4B forsimplicity. In other implementations, different configurations of thecomputer system can be used (e.g., different bus or storageconfigurations or a multi-processor configuration).

In one implementation, the media management and access system 490includes a media player to fulfill requests. For example, the mediaplayer can be used to view available media, select media for playback,and play the media. Examples of media items include video, images, andaudio (e.g., movies, television programs, recorded video, music,recorded audio, games, and software). The media player can also call onother tools (software applications or components) to access, store,playback, and/or execute media. In other uses, different platforms canbe used (such as a mobile device or phone or a game console).

A user operates the media player to display a list of media which theuser has permission to access. From the user's point of view, thedisplayed list does not distinguish among user accounts (though such adisplay could optionally be provided). Each item in the list is a mediaitem for which the user has permission to access (as defined by anapplicable license, but potentially including opening, copying,downloading, streaming, playing, and/or executing). The user may havemultiple accounts (or identities or accessible domains). Each accountmay have different access permissions or be with different serviceproviders. Further, the access rights for the account may vary dependingon the device currently being used. The media player has a record ofthese multiple accounts and the corresponding authentication information(e.g., provided by the user). When the user requests the menu or list ofavailable media, the media player checks what media items are availablefor each account and compiles a unified list or set of information. Thischeck could include querying service providers and/or checking local andnetwork storage, providing identification and authentication informationas needed. The media player presents the list to the user, such asthrough the user interface of the computer system display. Theinformation need not be presented as an item-by-item list and otherorganizations could also be used. The list may also indicate the type ofaccess available for the item (e.g., streaming only or locally stored).

The user selects a media item from the presented list and requests anoperation, such as play or copy, or uses a default operation. The mediaplayer accesses the selected item from the corresponding source asrequested, providing appropriate information to complete the access.Thus, the user can register multiple accounts with a single softwaretool and then seamlessly access the corresponding media items. Further,the media player resolves the logistics of fulfillment, removing theburden (at least in part) from the user.

Various illustrative implementations of the present invention have beendescribed. However, one of ordinary skill in the art will see thatadditional implementations are also possible and within the scope of thepresent invention. For example, the media player may only be a mediaaccess or interface tool, where the actual playback or manipulation ofmedia items is handled by a different application. Similarly, the mediaplayer could be a stand-alone application, or integrated into anotherapplication (directly, or as a modular component, such as a library orplug-in). Accordingly, the present invention is not limited to onlythose implementations described above. It is further understood that thescope of the present invention fully encompasses other implementationsthat may become obvious to those skilled in the art and that the scopeof the present invention is accordingly limited by nothing other thanthe appended claims.

What is claimed is:
 1. A system of managing and accessing media items,the system comprising: a plurality of domains configured to provideaccess to the media items; a plurality of client devices associated withthe plurality of domains, and providing a pathway for accessing themedia items; and a spanning application configured to track andaggregate accessible media items from the plurality of domains based onauthentication and registration information and associated rights of aparticular client device of the plurality of client devices, wherein thespanning application enables accessing of the media items across theplurality of domains for the particular client device by at least oneof: (1) maintaining multiple user account and domain credentials; and(2) seamlessly removing itself and re-adding itself to a plurality ofuser accounts and the plurality of domains necessary to provide accessto the media items for the particular client device; wherein a pluralityof origins of the accessible media items accessed from the plurality ofdomains are transparent to the particular client device such that theorigin of each accessible media item is indistinguishable from anyparticular domain; wherein the accessible media items are aggregatedinto a single view on the particular client device; wherein the singleview includes a view of rights to the accessible media items from theplurality of domains; and wherein the view of rights to the accessiblemedia items is based on rights granted to the particular client deviceand based on rights granted to a particular user account.
 2. The systemof claim 1, wherein the particular client device of the plurality ofclient devices is associated with only one domain of the plurality ofdomains at one time but the media items from the plurality of domainsare accessible to the particular client device.
 3. The system of claim1, wherein the single view is presented locally on a home network. 4.The system of claim 1, wherein the spanning application comprises meansto remove itself from one domain and add to another domain to gainaccess to the accessible media items.
 5. A method of managing andaccessing media items, the method comprising: tracking authenticationand registration information and associated rights of a particularclient device for accessing a plurality of accessible media items from aplurality of domains; aggregating the plurality of accessible mediaitems from the plurality of domains based on the authentication andregistration information and associated rights of the particular clientdevice; and accessing the media items across the plurality of domainsfor the particular client device using a spanning application, whereinthe spanning application enables accessing the media items across theplurality of domains by at least one of: (1) maintaining multiple useraccount and domain credentials; and (2) seamlessly removing itself andre-adding itself to a plurality of user accounts and the plurality ofdomains necessary to provide access to the media items for theparticular client device; wherein a plurality of origins of theaccessible media items accessed from the plurality of domains aretransparent to the particular client device such that the origin of eachaccessible media item is indistinguishable from any particular domain;wherein the accessible media items are aggregated into a single view onthe particular client device; wherein the single view includes a view ofrights to the accessible media items from the plurality of domains; andwherein the view of rights to the accessible media items is based onrights granted to the particular client device and based on rightsgranted to a particular user account.
 6. The method of claim 5, whereinthe particular client device of the plurality of client devices isassociated with only one domain of the plurality of domains at one time,but the media items from the plurality of domains are accessible to theparticular client device.
 7. The method of claim 5, further comprisingmaintaining multiple user account/domain credentials for accessing theplurality of accessible media items from the plurality of domains. 8.The method of claim 5, further comprising disengaging from one domainand adding to another domain to gain access to the plurality ofaccessible media items.
 9. A non-transitory tangible storage mediumstoring a computer program for managing and accessing media items, thecomputer program comprising executable instructions that cause acomputer to: track authentication and registration information andassociated rights of a particular client device for accessing aplurality of accessible media items from a plurality of domains;aggregate the plurality of accessible media items from the plurality ofdomains based on the authentication and registration information andassociated rights of the particular client device; and access the mediaitems across the plurality of domains for the particular client deviceusing a spanning application, wherein the spanning application enablesaccessing the media items across the plurality of domains by at leastone of: (1) maintaining multiple user account and domain credentials;and (2) seamlessly removing itself and re-adding itself to a pluralityof user accounts and the plurality of domains necessary to provideaccess to the media items for the particular client device; wherein aplurality of origins of the accessible media items accessed from theplurality of domains are transparent to the particular client devicesuch that the origin of each accessible media item is indistinguishablefrom any particular domain; wherein the accessible media items areaggregated into a single view on the particular client device; whereinthe single view includes a view of rights to the accessible media itemsfrom the plurality of domains; and wherein the view of rights to theaccessible media items is based on rights granted to the particularclient device and based on rights granted to a particular user account.10. The non-transitory tangible storage medium of claim 9, furthercomprising executable instructions that cause a computer to maintainmultiple user account/domain credentials for accessing the plurality ofaccessible media items from the plurality of domains.
 11. Thenon-transitory tangible storage medium of claim 9, further comprisingexecutable instructions that cause a computer to disengage from onedomain and adding to another domain to gain access to the plurality ofaccessible media items.